// pages/profile/index.ts
Page({

  /**
   * 页面的初始数据
   */
  data: {
    user: {
      // 昵称
      nickName: '',
      // 头像
      avatar: ''
    }
  },
  onLoad() {
    this.setData({
      user: wx.getStorageSync('share-user')
    })
  },
  // 获取昵称
  async getNickName(ev) {
    console.log('微信用户昵称：', ev.detail.value)
    /**
     * 1. 调用后台接口存储昵称
     * 2. 本地data存储
     */
    try {
      await wx.http.put('/userInfo', { nickName: ev.detail.value })
      // 请求成功
      this.setData({
        'user.nickName': ev.detail.value
      })
    } catch (error) {
      // 请求失败
      console.log(error)
    }

  },
  // 获取头像
  async getUserAvatar(ev) {
    console.log('获取微信用户头像：', ev.detail.avatarUrl)
    // wx.uploadFile({
    //   url: `${wx.baseURL}/upload`,
    //   filePath: ev.detail.avatarUrl, // 上传图片
    //   name: 'file', // 后台上传图片的属性名
    //   // 后台需要的其它参数放到这里
    //   formData: {
    //     type: 'avatar'
    //   },
    //   header: {
    //     Authorization: getApp().token
    //   },
    //   success: (result) => {
    //     const data = JSON.parse(result.data)
    //     console.log('上传结果：', data)
    //     setTimeout(() => {
    //       wx.utils.toast(data.message)
    //     })
    //     if (data.code === 401) {
    //       // 读取当前历史栈
    //       const pageStack = getCurrentPages()
    //       // 取出当前页面路径，登录成功能跳转到该页面
    //       const currentPage = pageStack[pageStack.length - 1]
    //       return wx.redirectTo({
    //         url: `/pages/login/index?redirectUrl=/${encodeURIComponent(currentPage.route)}`
    //       });
    //     }
    //     this.setData({
    //       'user.avatar': data.data.url
    //     })
    //   },
    //   fail: () => { },
    //   complete: () => { }
    // });
    try {
      const { data } = await wx.utils.upload(ev.detail.avatarUrl, {
        type: 'avatar'
      })
      this.setData({
        'user.avatar': data.url
      })
    } catch (error) {
      console.log(error)
    }

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})